Pump startup algorithms and related systems and methods

ABSTRACT

An infusion pump includes a pumping mechanism having at least one sensor and a pump motor and a pump control subsystem configured to control operation of the pumping mechanism, the pump control subsystem including a processor, a memory, and a startup module configured to drive the pump motor at a first rate, receive input from the at least one sensor, and drive the pump motor at a second rate based on the input received from the at least one sensor. Startup algorithms command an infusion pump to reach a targeted delivery rate or steady state in minimal time without requiring priming of the pump line or otherwise engaging in known methods of pump startup analysis.

RELATED APPLICATION

This application claims the benefit of U.S. Provisional Application No.61/938,264 filed Feb. 11, 2014, which is incorporated herein byreference in its entirety.

TECHNICAL FIELD

Subject matter hereof relates generally to infusion pumps, and moreparticularly, to startup algorithms and related systems and methods forinfusion pumps.

BACKGROUND

Infusion pumps are extremely useful medical devices for providingprescribed fluids, drugs, and other therapies to patients. For example,medications such as antibiotics, chemotherapy drugs, and pain relieversare commonly delivered to patients via an infusion pump, as arenutrients and other supplements. Infusion pumps have been used inhospitals, nursing homes, and in other short-term and long-term medicalfacilities, as well as for in-home care. Infusion pumps can beparticularly useful for the delivery of medical therapies requiring anextended period of time for their administration. There are many typesof infusion pumps, including large volume, patient-controlled analgesia(PCA), elastomeric, syringe, enteral, and insulin pumps. Infusion pumpsare typically useful in various routes of medication delivery, includingintravenously, intra-arterially, subcutaneously, intraperitoneally, inclose proximity to nerves, and into an intraoperative site, epiduralspace or subarachnoid space.

A measure of effectiveness of infusion pumps is the startup time, or thelength of time between the initiation of an infusion at a user interfaceof the pump and the moment that the instantaneous delivery rate actuallyreaches its intended steady state. Infusion pump applications thatrequire precise, and sometimes very small, volumes of fluid to bedelivered over rigidly defined durations of time are dependent not onlyon the ability of the delivery system to accurately achieve andconsistently maintain a specific flow rate, but on the aforementionedtransition or startup time.

Referring to FIG. 1, traditional infusion pumps can have significanterror in delivery during the startup time, which results in safetyissues such as under-delivery or over-delivery to the patient. As shownin a traditional infusion pump example of FIG. 1, in which time inminutes is depicted along the x-axis and flow rate in mL/hr is depictedalong the y-axis, the actual delivery rate takes over 30 minutes toreach the target delivery rate (steady state). In other embodiments oftraditional infusion pumps, this delay can last several hours or more,depending on the type of pump and/or the infusion being delivered. Thetotal startup error of delivery rate deviation can therefore be quitelarge. As illustrated in the example of FIG. 1, a 0.497 mL error, ornearly 50% underdelivery, exists on a target delivery rate of 1 mL/hr.Clearly, it would be beneficial to clinicians and patients for infusionpumps to reach the target steady state level faster and in a safermanner than current pumps.

A significant factor that contributes to startup time is the drive trainor network of mechanical components responsible for transmitting motiveforce from a motor (or other means of motion generation) to the fluid.Gearing, clutch assemblies, linkage couplings, and manufacturing orassembly tolerances all introduce varying amounts of discontinuity,“slop,” and “lag,” that act to prevent motive force from being rapidlyor completely translated into fluid flow. Another important factor ofstartup time, particularly for syringe-type pumps, pertains to the timethat must elapse while the pump's plunger driver increases the forceapplied to the syringe plunger to the point that the force overcomesopposing forces inherent in the syringe and associated tubing system andthereby begins to generate motion of the fluid therethrough. Eachsyringe has a “breakout force.” The breakout force is the force requiredto break or overcome static friction (“stiction”) within, or withrespect to, the syringe and begin pumping fluid out of the syringe.Generally, pumps are started at the speed necessary to produce thedesired steady state, which the actual delivery rate may eventuallyreach. Therefore, the aforementioned contributors to startup time arenot considered or compensated for. As a result, significant delays instartup time, such as those depicted in FIG. 1 can result.

Traditionally, in order to manage these delays in startup time, aclinician will often initiate or prime a pump in advance of a time whendelivery to a patient is needed and simply direct the fluid from thepump into a waste container or sink until the pump begins to visiblypump fluid. Such a method is not only costly and time-consuming, butdangerous to the patient who ultimately may therefore not receive anintended infusion volume.

In another example of managing a delay in startup time, because it maynot always be apparent when the infusion pump has reached a steadystate, a clinician may check the patient's vital signs in order todetermine when the pump has begun pumping fluid. But such an analysis isdistinctly disadvantageous, as the patient is being used to determinewhen the pump has reached a steady state. Such practice clearly raisespatient safety concerns, should the pump be programmed with an incorrectrate, or an unintended medication or infusate be unintentionallydelivered.

In another example, some pumps physically stop the syringe's plunger orthe pump's plunger driver, with a brake or other stopping mechanism,until the detected force exerted by the pump on the syringe plungerexceeds a given running force. At the time the detected force exceedsthe running force, the plunger or the pump's plunger driver is released.Such an embodiment can result in not only unneeded wear and tear on theinfusion pump and syringe hardware, but in over-delivery to the patientonce the particular component is released.

Therefore, there is a need for an infusion pump that reaches the targetdelivery rate or steady state in minimal time, which minimizes deviationof the delivery rate from the target rate (and minimizes accuracy errorby reducing the area under the delivery rate deviation curve of FIG. 1),and allows clinicians to rapidly start pump delivery without priming thepump, employing a brake, relying on patient vital sign data or otheranalysis, and thereby allowing the clinicians to maintain manageable andefficient workflow practices and focus more on patient care.

SUMMARY

Embodiments described or otherwise contemplated herein substantiallymeet the aforementioned needs. Embodiments of startup algorithms reachthe targeted delivery rate or steady state in minimal time withoutrequiring clinicians to prime the pump, employ a brake, or rely onpatient vital sign data or other analysis.

In an embodiment, a method of driving an infusion pump motor comprisesdriving the infusion pump motor at a first rate; determining aninflection point of a sensed parameter; and driving the infusion pumpmotor at a second rate.

In an embodiment, an infusion pump comprises a pumping mechanismincluding at least one sensor and a pump motor; and a pump controlsubsystem configured to control operation of the pumping mechanism, thepump control subsystem including: a processor, a memory, and a startupmodule configured to: drive the pump motor at a first rate, receiveinput from the at least one sensor, and drive the pump motor at a secondrate based on the input received from the at least one sensor.

In an embodiment, a closed-loop control circuit for driving an infusionpump motor comprises a proportional gain module; an integral gainmodule; a derivative gain module; a monitor for controlling a switchableinput based on output of the proportional gain module, the integral gainmodule, and the derivative gain module; and a summer configured toreceive the switchable input and an infusion pump motor speed and outputa pump motor drive command.

In a feature and advantage of embodiments, startup algorithmseffectively remove mechanical slack from the drive train of the pump andincrease the force placed on the syringe plunger in a significantlyshorter amount of time than if the motor simply ran at its intendedrate, as is typical in conventional pumps.

In a feature and advantage of embodiments, startup algorithms controlmotor commands to allow for the delivery of arbitrarily complexpatterns, as the evaluation and subsequent delivery is conducted inbursts or stages. Therefore, delivery based on what will be due by anarbitrary point in time makes complex patterns easier to deliver.Additionally, embodiments enable the software implemented by startupalgorithms to safely transition motor control.

In a feature and advantage of embodiments, overshoot or overdelivery offluids to patients is minimized. Embodiments provide a relatively smoothtransition from startup to delivery at the desired rate.

The above summary is not intended to describe each illustratedembodiment or every implementation of the subject matter hereof. Thefigures and the detailed description that follow more particularlyexemplify these embodiments.

BRIEF DESCRIPTION OF THE DRAWINGS

Subject matter hereof may be more completely understood in considerationof the following detailed description of various embodiments inconnection with the accompanying figures, in which:

FIG. 1 is an example graph of flow rate against time depicting thedeviation between actual and target delivery rates during startupconditions for a traditional infusion pump.

FIG. 2A is a perspective view of an example of a syringe type infusionpump, according to an embodiment.

FIG. 2B is a front view of an example of an ambulatory type infusionpump, according to an embodiment.

FIG. 3 is a block diagram of an infusion pump system, according to anembodiment.

FIG. 4A is a diagram of a force sensor bending movement, according to anembodiment.

FIG. 4B is a perspective view of a force sensor component, according toan embodiment.

FIG. 5 is a graph of flow rate with respect to time, depicting a pumpmotor command through startup, according to an embodiment.

FIG. 6 is a graph of flow rate and force with respect to time, depictinga shortened time to steady state delivery, according to an embodiment.

FIG. 7 is a graph of pump motor rate and force with respect to time,during startup conditions and illustrating a motor rate algorithmaccording to an embodiment.

FIG. 8 is a flowchart of a motor rate algorithm, according to anembodiment.

FIG. 9 is an annotated graph of motor rate and force with respect totime, during startup conditions illustrating a state identificationstartup algorithm, according to an embodiment.

FIG. 10 is a graph of force, force velocity, and force acceleration withrespect to time, during startup conditions for a state identificationstartup algorithm, according to an embodiment.

FIG. 11 is a flowchart of a startup algorithm, according to anembodiment.

FIGS. 12A and 12B are graphs of force, force velocity, and forceacceleration with respect to time, illustrating a minimized startup timeaccording to the startup algorithm of FIG. 11, according to embodiments.

FIG. 13 is a flowchart of a state identification startup algorithm,according to an embodiment.

FIG. 14 is a flowchart of a state identification startup algorithm,according to an embodiment.

FIG. 15 is a schematic diagram of a control circuit for a startupalgorithm, according to an embodiment.

FIG. 16 is a flowchart of operation for a startup algorithm implementingthe control circuit of FIG. 15.

While embodiments are amenable to various modifications and alternativeforms, specifics thereof have been shown by way of example in thedrawings and will be described in detail. It should be understood,however, that the intention is not to limit subject matter hereof to theparticular embodiments described. On the contrary, the intention is tocover all modifications, equivalents, and alternatives falling withinthe spirit and scope of subject matter hereof in accordance with theappended claims.

DETAILED DESCRIPTION OF THE DRAWINGS

FIGS. 2A and 2B show examples of infusion pumps 10A and 10B,respectively, (also referred to more generally in this disclosure bynumeral 10), which can be used to implement embodiments of the systemsand methods discussed herein. In general, infusion pump 10A is asyringe-type pump that can be used to deliver a wide range of drugtherapies and treatments. Infusion pump 10A includes a pharmaceuticalcontainer or syringe 12, which is supported on and secured to housing 14by clamp 16, respectively. In embodiments, syringe 12 can be separatelysupplied from pump 10A. In other embodiments, syringe 12 is anintegrated component of pump 10A. Syringe 12 includes a plunger 18 thatforces fluid outwardly from syringe 12 via infusion line 20 that isconnected to a patient. A motor and lead screw arrangement internal tohousing 14 of pump 10A cooperatively actuates a pusher or plunger drivermechanism 22, to move plunger 18. In embodiments, a sensor(schematically depicted in FIG. 3, and which is typically internal toplunger driver mechanism 22), monitors force and/or plunger position inthe syringe according to system specifications.

Infusion pump 10B shown in FIG. 2B is an example of an ambulatory-typepump that can be used to deliver a wide range of drug therapies andtreatments. Such ambulatory pumps can be comfortably worn by orotherwise removably coupled to a user for in-home ambulatory care by wayof belts, straps, clips or other simple fastening means; and can also bealternatively provided in ambulatory pole-mounted arrangements withinhospitals and other medical care facilities. Infusion pump 10B generallyincludes a peristaltic type infusion pump mechanism that controls theflow of medication from a reservoir (not shown in FIG. 2B) of fluidthrough a conduit passing along bottom surface 24 of pump 10B. Thisfluid can be from a cassette reservoir that is attached to the bottom ofpump 10B at surface 24, or from an IV bag or other fluid source that issimilarly connected to pump 10B via an adapter plate (not shown) atsurface 24. Specifically, pump 10B uses valves and an expulsor locatedon bottom surface 24 to selectively squeeze a tube of fluid (not shown)connected to the reservoir or adapter plate to effect the movement ofthe fluid supplied by the reservoir, IV bag, or other fluid source,through the tube and to a patient in peristaltic pumping fashion. Theembodiments of pumps of FIGS. 2A and 2B are provided only by way ofexample and are not intended to limit the scope of subject matterhereof. Other types of pumps and other pump configurations can beutilized in various embodiments.

Referring to FIG. 3, an infusion pump system 100 comprises, in anembodiment, infusion pump 102 (such as one of infusion pumps 10A and 10Bdescribed above). Optionally, and as depicted in FIG. 3, infusion pump102 can be operably coupled to a network or computer 104 having softwareconfigured to interface with infusion pump 102.

In an embodiment, infusion pump 102 generally comprises pump controlsubsystem 106, pumping mechanism 108, and I/O port 110. Pump controlsubsystem 106 includes a processor 112 and memory 114 programmable withselected protocols, profiles and other settings for controllingoperation of a pumping mechanism 108 such as, e.g., the aforementionedsyringe and peristaltic type mechanisms. Pump control subsystem 106further comprises startup module 116.

Processor 112 can be any suitable programmable device that acceptsdigital data as input, is configured to process the input according toinstructions or algorithms, and provides results as outputs. In anembodiment, processor 112 can be a central processing unit (CPU)configured to carry out the instructions of a computer program. In otherembodiments, processor 112 can be an Advanced RISC (Reduced InstructionSet Computing) Machine (ARM) processor or other embedded microprocessor.In other embodiments, processor 112 comprises a multi-processor cluster.Processor 112 is therefore configured to perform at least basic selectedarithmetical, logical, and input/output operations.

Memory 114 can comprise volatile or non-volatile memory as required bythe coupled processor 112 to not only provide space to execute theinstructions or algorithms, but to provide the space to store theinstructions themselves. In embodiments, volatile memory can includerandom access memory (RAM), dynamic random access memory (DRAM), orstatic random access memory (SRAM), for example. In embodiments,non-volatile memory can include read-only memory, flash memory,ferroelectric RAM, hard disk, floppy disk, magnetic tape, or opticaldisc storage, for example. The foregoing examples in no way limit thetype of memory that can be used, as these embodiments are given only byway of example and are not intended to limit subject matter hereof.

Startup module 116 comprises algorithms or instructions for startup ofinfusion pump 102, as will be described further below. As depicted,startup module 116 can be implemented as part of pump control subsystem106 by utilizing processor 112 and memory 114. In other embodiments (notshown), startup module 116 can be implemented by a processor and memoryseparate from pump control subsystem 106, processor 112 and memory 114.

In embodiments, pumping mechanism 108 comprises a sensor 118 and a motor120 and is operably coupled to one or more internal or externalreservoirs, IV bags, or other fluid sources.

In an embodiment, sensor 118 is configured to monitor force. Forexample, in embodiments described above, wherein infusion pump 102 is asyringe pump such as infusion pump 10A having syringe 12 that includesplunger 18 that forces fluid outwardly from syringe 12 via infusion line20 that is connected to a patient, sensor 118 can be located at thepoint where mechanism 22 of infusion pump 102 contacts plunger 18 ofsyringe 12 in order to measure the force imparted by one on the other.In embodiments, sensor 118 can be located at other locations within, oroutside of, mechanism 22. Sensor 118 can comprise a force sensor,pressure sensor, distance sensor or any other suitable sensor. In otherembodiments, pumping mechanism 108 comprises one or more additionalsensors 118. In embodiments, sensor 118 can also be used to determineocclusion within syringe 12 and/or infusion line 20.

Referring to FIGS. 4A and 4B, an embodiment of a force sensor 150utilizing a lever arm is depicted. In embodiments, force sensor 150 candetect fluid flow, lack of fluid flow (i.e., because of an occlusion) orother force or movement based on force imparted on force sensor 150. Forexample, in one embodiment a thumbpress of a syringe plunger can bearranged against, adjacent, or otherwise proximate force sensor 150 thatis incorporated in pump 10A by way of a pivotable coupling (notillustrated) of post or pin 152 with drive mechanism 22. Although notillustrated, it is to be understood that in this example, the plunger'sthumbpress would be positioned to reside in V-slot 154 of sensor 150.When drive mechanism 22 exerts force against the syringe's thumbpress,in operation of pump 10A, a force is correspondingly exerted againstforce sensor 150. It is to be appreciated that a smaller diameterthumbpress—of a correspondingly smaller diameter and thus smaller volumesyringe—will advantageously result in a larger force sensed at sensor150 in lever fashion since such force is imparted at a distance that isfarther from post or pin 152 than would occur with a larger thumbpressof a larger syringe. As such, smaller operative forces attributable tosmaller syringes can be as reliably sensed as larger forces attributableto larger syringes. This variable pivoting of sensor 150, depending uponthe size of the syringe thumbpress, can be detected and thecorresponding force sensed by, e.g., a capacitive, piezoelectric,resistive, or other suitable effect component. Generally, such a forcesensor system can be employed as described in published PCT PublicationNo. WO 2013/177379, entitled “Occlusion Detection.”

Referring again to FIG. 3, motor 120 is configured to drive fluid fromone or more internal or external reservoirs, IV bags, or other fluidsources, to the patient. For example, in embodiments described above,motor 120 and a lead screw arrangement internal to housing 14 of pump10A cooperatively actuates a pusher or plunger driver mechanism 22, tomove plunger 18. Motor 120 can therefore comprise any suitable drivemechanism.

Infusion pump 102 can further include a USB port, wireless interface, orother appropriate input/output (I/O) interface port 110 for connectinginfusion pump 102 to network or computer 104 having software configuredto interface with infusion pump 102. In embodiments, network or computer104 can transmit, via interface port 110, updated software or algorithmsfor pump control subsystem 106, and in particular, startup module 116.Power to infusion pump 102 is accomplished via an AC power cord and/orinternally provided battery.

In embodiments, startup module 116 is configured to utilize informationprovided by sensor 118 to regulate motor 120 rate in an informed,active, and substantially real-time manner that dramatically improvesthe performance of infusion pump 102.

For example, referring to FIG. 5, an example of a graph of flow ratewith respect to time for an embodiment of a motor command throughstartup is generally depicted. Time is depicted along the x-axis andflow rate in mL/hr is depicted along the y-axis. At start 200, a flowrate begins at time 0. As depicted, the flow rate begins at a rategreater than 0 because of embodiments of startup motor command 202, aswill be described further below. Embodiments of startup motor command202 can be issued immediately after pump power-on, in embodiments, or assoon as the hardware and software will accept such command. Therefore,as depicted, startup motor command 202 is run throughout startup untilshut down trigger point 204. In embodiments, the transition from startupmotor command 202 to shut down trigger point 204 can be, for example,stepped, curved, sinusoidal, decreasing, a function of force, a functionof force velocity, a function of force acceleration, or multipletriggers in combination. At shut down trigger point 204, startup motorcommand 202 is exited or terminated. In embodiments, a “stop” or“shutdown” command is given. In other embodiments, a startup algorithmoperating within or in cooperation with command 202 exits or terminatesdue to one or more measured values (such as those provided by sensor118) between, e.g., pump 102 and mechanism 108 in FIG. 3. In otherembodiments, the startup algorithm exits or terminates due to normalexit or termination conditions of the algorithm. At programmed delivery206, the pump begins typical programmed delivery, according to the pumpprotocol. At end 208, the pump exits or terminates its typicalprogrammed delivery. Therefore, in general, as illustrated by FIG. 5, astartup command to a pump motor is introduced, and subsequently, theflow is transitioned at a trigger point to commanded, programmeddelivery.

Referring to FIG. 6, the results of an implementation of an embodimentof a motor command through startup, for example, the motor commandthrough startup algorithm illustrated by FIG. 5, is depicted. Theresults of FIG. 6 are in contrast to the problem illustrated by FIG. 1.In other words, the flow rate curve of flow rate and plunger force withrespect to time are illustrated when embodiments of startup algorithmsare implemented according to subject matter hereof. Time is depictedalong the x-axis. Flow rate in mL/hr is depicted along one y-axis, andforce is depicted along the opposite y-axis.

Commanded rate 300 comprises a linear rate depicting the motor speedcommanded by the startup algorithm. Measured rate 302 comprises ameasured linear rate. Instantaneous rate 304 comprises the instantaneouslinear rate of a fluid mass actually delivered. Plunger force 306comprises the force measured by, for example, sensor 118. According toembodiments of a motor command through startup algorithm, the timeelapsed until the measured (linear) rate 302 and the instantaneous rate304 reach their respective steady states is greatly reduced whencompared to the elapsed time of FIG. 1. Likewise, upper error 308 andlower error 310 are minimized when compared to, e.g., FIG. 1. Plungerforce 306 is shown and transitions from a generally increasing forcefrom about time=0 minutes to about time=4 minutes, and then to agenerally constant force thereafter. In embodiments of startupalgorithms according to subject matter hereof, the startup sequence isentered at time=0 minutes and generally exited or terminated at abouttime=4 minutes as the steady state is reached and the pump transitionsto programmed delivery. It is to be appreciated and understood, however,that the steady state time depicted in the example of FIG. 6, about 4minutes, will vary depending upon particular parameters andcharacteristics of a specific embodiment. Thus, for example, use ofrelatively larger syringes of relatively larger volumes may result incorrespondingly greater times to reach steady state. As illustrated, inan embodiment of a motor command startup algorithm, when compared to thedeviation between actual and target delivery rates during startupconditions for a traditional infusion pump, the startup error is cut by8 fold, from 0.497 mL to 0.067 mL. In embodiments, the startup error canbe reduced or cut by more or less than the example depicted in FIG. 6,depending on the application, hardware, and startup algorithm, amongother factors.

Motor Rate Startup Algorithm

Referring to FIG. 7, an illustration of a motor rate startup algorithmis depicted, according to an embodiment of subject matter hereof and inan example utilizing a syringe pump. Time is depicted along the x-axis,and motor rate and plunger head force are depicted along the y-axis. Themotor rate required for target delivery rate 400 is illustrated as asubstantially constant horizontal line. In embodiments, the motor raterequired for target delivery rate 400 is the steady state rate at whichprogrammed delivery is desired.

Force-dependent motor rate 402 and the plunger head force sensor status404 are interrelated, as depicted in FIG. 7. In an embodiment,force-dependent motor rate 402 is initially configured for anaccelerated motor rate 406 (in embodiments, as a function of the forcesensed, as depicted by plunger head force sensor status 404, and as willbe described). In embodiments, an initial accelerated motor rate 406 canbe any appropriate rate according to the particular pump hardware inuse. During this stage, the plunger head force is negligible. Thisperiod of accelerated motor rate 406 removes mechanical slack from thedrive train of the pump and increases the force placed on the syringeplunger in a significantly shorter amount of time than if the motorsimply ran at its intended rate (e.g. target delivery rate 400). Thisshortened time is particularly apparent when using extremely slow rateswhich may be needed to produce deliberate fluid delivery rates typicalof pediatric care or when highly potent drugs are involved. Inembodiments, for example, the plunger-driven infusion pump of pump 10A,during the period of accelerated motor rate 406, the motor (for example,motor 120) therefore advances the pump plunger (for example, plunger 18)at an accelerated rate until the force applied to the plunger reachesthe magnitude required to overcome opposing forces (e.g., inertial,static friction, back pressure). In an embodiment, force-dependent motorrate 402 then transitions to the rate appropriate for the intended fluiddelivery rate, as depicted by transitioning motor rate as a function offorce 408 (which is decreasing, and will be described below). At thetime where the pump transitions from startup conditions to steady state412, the motor rate has transitioned from a force-dependent rate to asteady state rate 410.

With respect to the plunger head force, embodiments can include theforce sensed by sensor 118 in FIG. 3. The plunger head force sensorstatus 404 is initially negligible, as shown by the plunger head forcesensor status 404 segment labeled “Negligible Force as System SlackRemoved 414.” During pump startup, there is increasing force at 416 as,for example mechanism 22 in FIG. 2A contacts plunger 18. This increasingforce is necessarily related to the transitioning motor rate as afunction of force 408, as described above, and as shown in FIG. 7. Atthe time where the pump transitions from startup conditions to steadystate 412, a cutoff force 418 is detected, sensed, or otherwisedetermined by the sensor (e.g. sensor 118 in FIG. 3). Subsequently, asdescribed with respect to the force-dependent motor rate 402, the motorrate transitions from a force-dependent rate to a steady state rate 410.Likewise, plunger head force sensor status 404 transitions to asteadily-sensed force. In embodiments, sensor 118 can then be used forongoing steady-state programmed delivery functions, such as occlusionsensing, as the startup algorithm sequence concludes.

For example, referring to FIG. 8, a flowchart of an embodiment of amotor rate startup algorithm 500 is illustrated. Embodiments of motorrate startup algorithm 500 can be implemented by, for example, andreferring to FIG. 3, pumping mechanism 108 as directed by, for example,pump control subsystem 106 and startup module 116.

At 502, the pump motor is driven at an accelerated rate. At decisionpoint 504, it is determined whether the force sensed by sensor 118 isincreasing. If the sensed force is not increasing, motor 120 continuesto be driven at an accelerated rate at 502. If, at decision point 504,the sensed force is determined to be increasing, motor 120 transitionsto a transitioning rate at 506. In embodiments, the transitioning ratecan be a lower rate due to the removal of system slack and the plungerdriver mechanism contacting the syringe plunger. In embodiments, motor120 is driven at a transitioning rate at 506 that is analogous totransitioning rate 408 in FIG. 7. At decision point 508, it isdetermined whether the force sensed by sensor 118 has reached the cutoffforce. If the sensed force has not reached the cutoff force, motor 120continues to be driven at the transitioning rate. If, at decision point508, the sensed force has reached the cutoff force, motor 120 moves to asteady state rate at 510.

In embodiments, the force sensed by sensor 118 is provided continuously,or substantially in real-time, to, for example, pumping mechanism 108 inorder to variably control motor 120. As such, decision points 504 and508 can be implemented not as discrete decision points, but thresholdsto be reached. One skilled in the art will readily appreciate thepossibilities for implementation of motor rate startup algorithm 500.The example provided by FIG. 7 is intended to be illustrative of anembodiment given only by way of example and is not intended to limit thescope of subject matter hereof.

State Identification Startup Algorithm

In an embodiment, a pump startup algorithm is configured to identify aplurality of startup states. By utilizing the correlation betweenvarious pumping characteristics, such as actual delivery rate, expecteddelivery rate, and force sensor status, among others, startup states canbe identified. The pump motor can be controlled depending on the currentstate. In embodiments, known future states can also be considered andincluded for determinations of motor control. In embodiments, paststates can also be considered and included for determinations of motorcontrol.

Referring to FIG. 9, an annotated graph of the correlation betweenactual delivery rate, expected delivery rate and force sensor status isdepicted, according to an embodiment. Time in minutes is depicted alongthe x-axis. Flow rate in mL/hr is depicted along one y-axis, and forceis depicted along the opposite y-axis. Additionally, the respectivestartup segments or states and the corresponding parameters areidentified along the x-axis. Target delivery rate 600 is depicted at 1mL/hr as a horizontal line across FIG. 9. Target delivery rate 600 isthe steady state rate at which the delivery is desired. The curves ofthe plunger linear rate of travel 602, actual delivery rate 604, plungerhead force 610, plunger head force velocity 606, and plunger head forceacceleration 608 are also depicted, and will be described further below.As referenced throughout this document, the term “plunger head force”pertains to a force exerted by, for example, plunger driver mechanism 22on plunger 18, and may be sensed and measured by, for example, sensor118. As depicted in FIG. 9, plunger linear rate of travel 602 has beenscaled up according to the cross-section of the syringe to provide amore meaningful illustration, and is not to scale.

Referring to Table 1 below, in an example of a syringe pump embodimentof subject matter hereof, each of the individual startup states has agroup of parameter values unique to the respective state. In anembodiment, the group of parameters is {D′, F, F′, F″ }, where D′ is thelinear rate of travel, F is the plunger head force, F′ is the plungerhead force velocity, and F″ is the plunger head force acceleration. Inother embodiments, other, additional, or fewer parameters are utilized,according to the particular application and startup goals. In theexample embodiment of Table 1 below, the respective states aredetermined based on the parameters' values with respect to 0 (includingpositive or negative indications). In embodiments, the respective statescan be determined not only by the group of parameter values with respectto 0, but alternatively or additionally based on other threshold values.In other embodiments, additional or fewer startup states can be definedand utilized, according to the respective embodiments and modes ofoperation.

TABLE 1 State Identification Startup Algorithm States, Description, andParameters State Description Parameters 1 Internal Slack - Backlash,Gear Lash, D′ = 0 Thread Tolerances are still potential F = 0 factorsand the system is not F′ = 0 physically moving F″ = 0 2 External Slack -The plunger driver D′ > 0 mechanism has not yet come into F = 0 contactwith the syringe plunger F′ = 0 F″ = 0 3 Initiate Preload - The plungerdriver D′ > 0 mechanism is making contact with F > 0 the syringe plungerF′ > 0 F″ > 0 4 Preload - The plunger driver D′ > 0 mechanism isimparting a force on F > 0 the syringe plunger F′ > 0 F″ = 0 5Stiction - The force being applied by D′ > 0 the plunger drivermechanism is F > 0 beginning to overcome the force of F′ > 0 staticfriction between the plunger F″ < 0 and the syringe 6 Motion - The forceneeded to D′ > 0 overcome static friction has been F > 0 exceeded andthe syringe plunger has F′ ≠ 0 moved forward F″ < 0 7 Steady State - Thesystem has D′ > 0 reached delivery equilibrium F >= 0 F′ = 0 F″ = 0

In State 1, the pump is in a state of “internal slack.” D′, F, F′, andF″ are all 0. There is no movement of the pump motor or plunger. Inembodiments of State 1, backlash, gear lash, thread tolerances, gearing,clutch assemblies, linkage couplings, and/or manufacturing or assemblytolerances, for example, are present and have yet to be removed orexceeded to enable plunger movement. In embodiments, the length orduration of State 1 is pump-dependent, in that the uniquecharacteristics of the pump affect the ability of the plunger to move.

In State 2, the pump is in a state of “external slack.” D′ is greaterthan 0, indicating that the internal slack of State 1 has been removed.In an embodiment, a linear potentiometer can be monitored such that thepump (for example, pump control subsystem 106), can determine when thepotentiometer has begun changing value. According to embodiments, oneskilled in the art will recognize that the “monitoring” can also be bymeasurement of linear position and/or velocity. In other embodiments, asystem utilizing derived values can be implemented. For example, alinear sensor can be omitted and replaced with a derived signal such asa calculated linear value that is based on the rotation of the motor. Inembodiments, the rotation can be monitored with a rotary-type sensor andencoder (closed loop) or with a stepper motor capable of running in anopen loop mode (without an encoder). In embodiments of State 2, theplunger driver mechanism has not yet come into contact with the syringeplunger. As a result, F, F′, and F″ all remain 0. In embodiments, thelength or duration of State 2 is operator-dependent, in that linear rateof travel of the plunger can be determined by the operator.

In State 3, the pump is in a state of “initiate preload.” D′, F, andforce-related derivatives F′ and F″ are all greater than 0. Inembodiments of State 3, the plunger driver mechanism is making contactwith the syringe plunger. In embodiments, the length or duration ofState 3 is both pump-dependent and operator-dependent.

In State 4, the pump is in a state of “preload.” D′, F, and F′ allremain greater than 0. However, F″ is equal to 0, as there is no moreplunger head force 610 acceleration, and the plunger is insteadincreasing velocity at a constant rate. In embodiments of State 4, theplunger driver mechanism is imparting a force on the syringe plunger.

In State 5, the plunger experiences static friction or “stiction”within, or with respect to, the syringe. D′, F, and F′ all remaingreater than 0. However, the force acceleration F″ is negative. Inembodiments of State 5, the resulting negative acceleration is due tothe force being applied by the plunger driver mechanism to overcome theaforementioned stiction.

In State 6, the pump is in a state of “motion.” D′ and F remain greaterthan 0. F″ remains negative. However, F′ is nonzero. In embodiments ofState 6, the force needed to overcome stiction has been exceeded and thesyringe plunger has moved forward. The force in State 6 is so great asto overcome stiction and transition to plunger motion, but then fallsoff as the plunger moves as desired pump begins to deliver. Newton'sFirst Law of Motion states that a body at rest will remain at restunless an outside force acts on it, and a body in motion at a constantvelocity will remain in motion in a straight line unless acted upon byan outside force. As a result, the maximum amount of force required tomove an object occurs at the point where motion first starts. Inembodiments, this point is State 6.

In State 7, the pump is in a state of “steady state.” In embodiments ofState 7, the system has reached equilibrium. D′ and F are both greaterthan 0; but F′ and F″ both equal 0. In embodiments, F′ and/or F″ areroughly equal to 0 due to a level of “noise” or external interferencecaused by, for example, surface roughness or inconsistent lubrication,etc. At this point, the pump has transitioned through its startupalgorithm and is pumping according to the steady state rate at whichprogrammed delivery is desired.

In another embodiment, the entire startup sequence can be effectivelymoved up one state. For example, time 0 can be the point at which thepotentiometer is positive, thereby indicating that the pump has started.State 1 can thus be eliminated, as embodiments of a startup algorithmcan be instantiated or initialized after the potentiometer is determinedto be positive (and the pump started). In other embodiments of a startupalgorithm, the method can be programmed to wait until the positivepotentiometer point has been reached before proceeding to other states.The startup sequence can therefore be further shortened and made moreefficient.

In embodiments, startup algorithms according to the subject matterdisclosed herein can stop or decrease the rate of pump motor or plungermotion at any of the state conditions or within any of the stateconditions. In an embodiment, “stopping” the rate of pump motor orplunger motion comprises stopping the scaled up rate of the motion sothat the plunger is no longer accelerating. For example, the shut downtrigger point can be at state 4, when the pump is in a state of“preload.” In another embodiment, the shut down trigger point can be atstate 5, when the plunger experiences static friction or “stiction”within, or with respect to, the syringe. In another embodiment, the shutdown trigger point can be at state 6, when the pump is in a state of“motion.” Effectively, referring again to FIG. 9, target delivery rate600 is adjusted based on the measured feedback of plunger head force 610and/or the derived values of plunger head force velocity 606 and plungerhead force acceleration 608, according to their respective parameterswithin the state conditions.

Referring to FIG. 10, an example startup sequence of the force curve fora pump is illustrated. Time in seconds is depicted along the x-axis.Force in lbs is depicted along one y-axis, and velocity and accelerationare depicted along the opposite y-axis. In the example of FIG. 10, thestartup curve is illustrative of a 20 mL/hr, 60cc syringe system. Forcevelocity 702 was obtained by: ΔF/Δt (change in force 700 over change intime), and force acceleration 704 was calculated using: ΔF′/Δt (changein force velocity 702 over change in time). Note that the forceacceleration 704 magnitude was amplified by a factor of 30 to allow itto be placed on the same axes as force velocity 702, for the sake ofcomparison.

As shown, by plotting the first and second derivatives of force 700,ΔF/Δt and ΔF′/Δt respectively, important transition or inflection pointsin the force can be seen. The peaks in force velocity 702 showinflection points within force 700, where the force 700 transitionsbetween increasing and decreasing rates. In embodiments, startupalgorithms can utilize one or more of the inflection points of forcevelocity 702 or force acceleration 704 as an indicator to change motorspeed in order to minimize or perhaps even prevent overshoot of deliveryat 708. Embodiments therefore result in quick startup with a smoothtransition to steady state at the desired delivery rate.

In embodiments of startup algorithms, the motor speed is commanded todecrease after the chosen inflection point as a function of eithervelocity or acceleration, or combinations thereof, where appropriate.For example, if the first peak 706 of the force velocity 702 was chosenas the point to start decreasing speed, the motor speed then decreasesover time according to the absolute value of the velocity. In anotherembodiment, a trigger switch point for the motor drive can be at thenegative point of force acceleration 704. In this example, the triggerswitch point would be inflection point 710 of force acceleration 704.

Referring to FIG. 11, a flowchart of an embodiment of a startupalgorithm 800 is illustrated. Embodiments of startup algorithm 800 canbe implemented by, for example, and referring to FIG. 3, pumpingmechanism 108 as directed by, for example, pump control subsystem 106and startup module 116.

At 802, the infusion pump motor, for example, motor 120, is driven at afirst rate. In embodiments, the first rate can be an accelerated rate;for example, that discussed with respect to FIG. 8.

At 804, a determination of an inflection point for a characteristic ofthe pump motor is made. In embodiments, as described above with respectto FIG. 10, the characteristic of the pump motor can be force velocity702. In another embodiment, the characteristic of the pump motor can beforce acceleration 704. In other embodiments, other characteristics ofthe pump motor can be utilized, such as linear rate of plunger travel.

At 806, the infusion pump motor is driven at a second rate. Inembodiments, the second rate can be a slower rate than the first rate,or a transitional rate different than the first rate.

Optionally, at 808, the infusion pump motor can be driven at a thirdrate. In an embodiment, the third rate is a steady state rate at whichprogrammed delivery is desired. In embodiments (not shown in FIG. 11),the driving of the pump motor at a third rate 808 can be preceded by adetermination of an inflection point or other value of a characteristicof the pump motor. In embodiments, the characteristic of the pump motorcan be the same characteristic as evaluated at 804. In otherembodiments, the characteristic of the pump motor can be a differentcharacteristic than was evaluated at 804.

Referring to FIGS. 12A and 12B, graphs illustrating the results ofimplementation of a startup algorithm—for example, startup algorithm800—are shown. The data graphed illustrates the transition from 20 mL/hrto 1 mL/hr when a force acceleration inflection point is selected as thetransitional motor control point. As illustrated, there is minimalovershoot or overdelivery, and the pump reaches steady state at 300seconds.

Referring to FIG. 13, and again to FIG. 9, a flowchart of an embodimentof a state identification startup algorithm 1000 is illustrated.Embodiments of startup algorithm 1000 can be implemented by, forexample, and referring to FIG. 3, pumping mechanism 108 as directed by,for example, pump control subsystem 106 and startup module 116.

State identification startup algorithm 1000 can be utilized in complexor untested startup sequences. Embodiments of algorithm 1000 providesafety boundaries around startup sequences. For example, algorithm 1000provides a wrapper around given startup commands by determiningrespective states based on known boundary conditions.

For example, at 1002, an unknown state is entered. The state can beunknown due to, as mentioned, a complex or untested startup sequencebeing implemented. In embodiments, the state can be unknown because of asoftware or hardware error which effectively “drops” the algorithm at apoint in which it is unknown how far the startup sequence hasprogressed. In other words, the algorithm has no record or data as towhat steps the algorithm has already executed. For example, it would beimpossible to know, based merely on time, whether the startup sequencewas in State 1, State 7, or any state in between States 1 and 7. Itcould therefore be problematic or perhaps even dangerous to drive themotor faster, slower, (or even at the same rate, in certain cases)without first understanding the point at which the startup sequencecurrently exists.

At 1004, the unknown state is determined based on known boundaryconditions. The boundary conditions can be determined by, for example,determination of inflection points as illustrated in FIGS. 10-11 and/oras described with respect to FIG. 9 and Table 1.

At 1006, algorithm 1000 allows the startup sequence to transition to asubsequent state. If, as depicted, the subsequent state is also unknown,algorithm 1000 proceeds recursively back to 1002. The subsequent unknownstate can then be determined at 1004 based on that state's boundaryconditions. In other embodiments, future states can be generally knownand characterized. In such embodiments, algorithm 1000 can proceed to aknown state. Embodiments of the methods disclosed herein thereforeenable the software implemented by startup module 116 to more safelytransition motor control.

Referring to FIG. 14, and again to FIG. 9, a flowchart of an embodimentof a state identification startup algorithm 1100 is illustrated.Embodiments of startup algorithm 1100 can be implemented by, forexample, and referring to FIG. 3, pumping mechanism 108 as directed by,for example, pump control subsystem 106 and startup module 116.

Startup algorithm 1100 begins by entering internal slack state 1102.Startup algorithm 1100 remains in internal slack state 1102 until one ormore boundary conditions 1103 are reached. If the one or more boundaryconditions are reached 1103, startup algorithm 1100 exits internal slackstate 1102 and enters external slack state 1104.

Startup algorithm 1100 remains in external slack state 1104 until one ormore boundary conditions 1105 are reached. If the one or more boundaryconditions are reached 1105, startup algorithm 1100 exits external slackstate 1104 and enters initiate preload state 1106.

Startup algorithm 1100 remains in initiate preload state 1106 until oneor more boundary conditions 1107 are reached. If the one or moreboundary conditions are reached 1107, startup algorithm 1100 exitsinitiate preload state 1106 and enters preload state 1108.

Startup algorithm 1100 remains in preload state 1108 until one or moreboundary conditions 1109 are reached. If the one or more boundaryconditions are reached 1109, startup algorithm 1100 exits preload state1108 and enters stiction state 1110.

Startup algorithm 1100 remains in stiction state 1110 until one or moreboundary conditions 1111 are reached. If the one or more boundaryconditions are reached 1111, startup algorithm 1100 exits stiction state1110 and enters motion state 1112.

Startup algorithm 1100 remains in motion state 1112 until one or moreboundary conditions 1113 are reached. If the one or more boundaryconditions are reached 1113, startup algorithm 1100 exits motion state1112 and enters steady state 1114.

Boundary conditions 1103, 1105, 1107, 1109, 1111, and 1113 can bedetermined by, for example, determination of inflection points asillustrated in FIGS. 10-11 and/or as described with respect to FIG. 9and Table 1.

PID-F Startup Algorithm

In an embodiment, a pump startup algorithm can be implemented by a PID-Falgorithm and control circuit. The term “PID-F” refers to a controlcircuit that includes: a “Proportional” component, relating to a stablemechanical system wherein inputs equal output; an “Integrator”component, relating to error; a “Derivative” component, relating to ratechanges; and a “Feed-forward” component, relating to predictable,repeatable, and short time duration events.

Referring to FIG. 15, a schematic diagram of a PID-F control circuit1200 for a startup algorithm is depicted. Control circuit 1200 comprisesa control loop feedback controller. In general, control circuit 1200calculates an “error” value as a difference between a measured processvariable and a desired setpoint. Control circuit 1200 minimizes thiserror by adjusting the process control inputs. Generally, controlcircuit 1200 can initially drive the motor at a high rate, and thenreduce the motor drive rate based on the control loop feedbackcontroller. Effectively, then, control circuit 1200 functions toselectively reduce the motor drive rate.

The control circuit can be implemented, for example, on pump 102, andparticularly, processor 112 and/or memory 114. One skilled in the artwill appreciate that startup module 116 can also include components ofthe control circuit and related processing. In an embodiment, thecontrol output comprises two commands. The first command is a user motordrive rate command, in a feed-forward (the “F”, in “PID-F”) path 1221 aswill be described. The second command is a PID-based closed-loop forcecontrol. In embodiments, a trigger switch point for varying the motorcontrol drive rate is based on closed-loop error.

According to an embodiment, an input to control circuit 1200 comprisesmotor speed, or the user-commanded pump rate. In embodiments, syringetype is another input, which is utilized by a lookup table 1201, as willbe described. In another embodiment a timer 1223 input is a so-called“watchdog” which limits an amount of time in performing the control, andstops the processing if the time is exceeded. According to anembodiment, motor speed is output by output control circuit 1200. Inembodiments, the motor speed output is the motor speed to run at aparticular delivery rate.

In an embodiment, table 1201 comprises a look-up table. In anembodiment, motor speed and syringe type are input to table 1201. Otherinputs are, of course, possible according to embodiments of subjectmatter hereof. Table 1201 can output a force command, F_cmd 1210 to thePID closed loop control. In an embodiment, F_cmd 1210 is a function ofmotor speed and syringe type.

First summer 1203 generates an error signal. In an embodiment, the erroris calculated by: Error=F_cmd−F_process. As will be described, F_processis the output from H_process 1217.

P Gain 1209 comprises the proportional gain. The error output from firstsummer 1203, F_error, is input to P Gain 1209. In an embodiment, thefunction of P Gain 1209 is: P_out=P_gain*F_error.

I Gain 1211 comprises the integral gain. In an embodiment, I Gain 1211stores a running sum of the error times the I gain. Typical use is todrive the control to match the commanded input, making F_error=0. In anembodiment, the output of I Gain 1211 is calculated by:I_out=(I_gain*F_error)*sample period+I_out_last; I_out_last=I_out.

D Gain 1213 comprises the derivative gain. In an embodiment, theprocessing of D Gain 1213 is: D_out=(F_error−F_error_last)/sampleperiod.

Second summer 1205 combines the P Gain 1209, I Gain 1211, and D Gain1213 outputs. In an embodiment, the output provided by Second summer1205 is calculated by: Second summer 1205 Output=P Gain out+I Gain out−DGain out.

Drive Limits 1215 limits the PID contribution output contribution. Itprovides an upper level so-called “clamping” effect, in embodiments.

Third summer 1207 combines the Drive Limits 1215 signal and thefeed-forward signal and outputs to the motor drive 1222 according to:Output=motor speed input+PID_out. The feed-forward signal thereforeprovides the motor speed as input to third summer 1207 of controlcircuit 1200.

On/off switch 1220 functions to, alternatively, include or block out theclosed-loop PID of P Gain 1209, I Gain 1211, and D Gain 1213. Whenblocked out, feed-forward is the only signal going to the motor.

H_process 1217 comprises the pump dynamics. According to an embodiment,H_process 1217 receives motor drive 1222 as an input, and outputs theforce sensor data (F_Process).

In an embodiment, monitor 1219 comprises the control algorithm(s). In anembodiment, monitor 1219 monitors the control conditions and determineswhen to block out the PID via on/off switch 1220. In embodiments, forexample, as shown in FIG. 15, timer 1223, syringe type 1225, and F_error1227 can be input to monitor 1219 to determine the switch 1220conditions. In another embodiment, only timer 1223 is input to monitor1219. In an embodiment, timer 1223 is a watchdog limiting the amount oftime performing the control algorithm, stopping the algorithm if thetime limit is exceeded. In another embodiment, only syringe type 1225 isinput to monitor 1219. In embodiments, one or more measures of syringetype 1225 or syringe distance (not shown) can be input to monitor 1219.In another embodiment, only F_error 1227 is input to monitor 1219 todetermine the switch 1220 conditions. In other embodiments, combinationsor the aforementioned inputs or other inputs can be utilized by monitor1219.

Referring also to FIG. 16, a flowchart of operation for a startupalgorithm 1300 implementing the PID-F control 1200 of FIG. 15 isdepicted. The element labels of control 1200 are reflected in FIG. 16for ease of relation between the two figures.

Startup algorithm 1300 begins at start 1202. At 1204, motor speed isinput to control circuit 1200. At 1206, the control determines switchsetting. At 1208, if the motor speed is equal to or greater than a givenvalue, for example, V_(pif), or the minimum motor rate for normalstartup, below which the start algorithm becomes active, startupalgorithm 1300 proceeds to stop 1222 (because in such a condition, thestartup algorithm is not needed to quickly start the pump). But if, at1208, the motor speed is less than a given value (in embodiments,V_(pif)), F_cmd is set at 1210 (because in such a condition, the startupalgorithm is needed to quickly start the pump). As described, F_cmd 1210can be set by lookup table value according to inputs of motor speed andsyringe type.

At 1212, PID on/off 1220 is switched according to output from monitor1219. At 1214, the absolute value of the error calculated is checkedagainst a window. If the absolute value of the error calculated is equalto or greater than the window, a time duration t is checked against atimeout. If the time duration t is less than or equal to the timeout,startup algorithm 1300 recursively proceeds to PID output 1220 andsubsequently, back to 1214, the determination of the absolute value ofthe error against a window. If the time duration t is greater than thetimeout, startup algorithm 1300 proceeds to switch out (or block out)the PID at 1218. If, referring again to 1214, the absolute value of theerror calculated is less than the window, startup algorithm 1300proceeds to switch out (or block out) the PID at 1218. Startup algorithm1300 ends at stop 1222.

Embodiments of PID-F startup algorithm 1300 can be implemented by, forexample, and referring to FIG. 3, pumping mechanism 108 as directed by,for example, pump control subsystem 106 and startup module 116.

Combination Startup Algorithms

In embodiments, a pump startup algorithm can incorporate aspects of theMotor Rate Startup Algorithm, the State Identification StartupAlgorithm, and/or the PID-F Startup Algorithm in combination. Forexample, a monitor of the embodiment of a PID-F Startup Algorithm candetermine the current position along the startup sequence, such as anyone of the seven states illustrated in FIG. 9 of embodiments of a StateIdentification Startup Algorithm. In embodiments, then, pump systemsinclude combinations of software and hardware to reach targeted deliveryrate or steady state in minimal time. One skilled in the art willreadily appreciate that startup algorithms according to the subjectmatter disclosed herein can stop or decrease the rate of pump motor orplunger motion at any of the state condition boundaries or within any ofthe state conditions, segments, or phases identified by, for example,the Motor Rate Startup Algorithm, the State Identification StartupAlgorithm, and/or the PID-F Startup Algorithm, alone or in combination.

Characterization of Breakout Forces

In embodiments, startup algorithms can utilize a database ofcharacterized syringe breakout forces as aforementioned. For example,referring to FIG. 3, network/PC 104 can provide, via I/O port 110,access for pump 102 to a database of breakout forces. In embodiments,memory 114 can also store data for breakout forces.

As described above, each pump has unique gearing, clutch assemblies,linkage couplings, and manufacturing or assembly tolerances that allintroduce varying amounts of discontinuity that in turn inhibit orprevent motive force from being instantly or completely translated intofluid flow. By determination of a particular syringe and its particularbreakout force, determination of the individual startup states and theirrespective progression can be further defined and characterized. As aresult, startup sequence progression can be more easily transitioned. Inembodiments, the particular breakout forces are stored by, for example,table 1201. In embodiments, table 1201 can comprise not just a singletable, but a plurality of tables. In embodiments, table 1201 cancomprise parameters or data that affect pump startup reaching steadystate. Other parameters that can be stored in, for example, table 1201or a plurality of tables, are the age of the pump (new pump, old pump,hours of use, etc.), a sensor calibration, tubing type (material,friction coefficient, etc.), tubing diameter, tubing length, needlesize, and the viscosity of the infusing substance, among others. Oneskilled in the art will readily appreciate that any modifying parametercan be utilized in table 1201.

Various embodiments of systems, devices, and methods have been describedherein. These embodiments are given only by way of example and are notintended to limit the scope of subject matter hereof. It should beappreciated, moreover, that the various features of the embodiments thathave been described may be combined in various ways to produce numerousadditional embodiments. Moreover, while various materials, dimensions,shapes, configurations and locations, etc. have been described for usewith disclosed embodiments, others besides those disclosed may beutilized commensurate with the scope of subject matter hereof.

Persons of ordinary skill in the relevant arts will recognize thatsubject matter hereof may comprise fewer features than illustrated inany individual embodiment described above. The embodiments describedherein are not meant to be an exhaustive presentation of the ways inwhich the various features of subject matter hereof may be combined.Accordingly, the embodiments are not mutually exclusive combinations offeatures; rather, the subject matter hereof may comprise a combinationof different individual features selected from different individualembodiments, as understood by persons of ordinary skill in the art.

Any incorporation by reference of documents above is limited such thatno subject matter is incorporated that is contrary to the explicitdisclosure herein. Any incorporation by reference of documents above isfurther limited such that no claims included in the documents areincorporated by reference herein. Any incorporation by reference ofdocuments above is yet further limited such that any definitionsprovided in the documents are not incorporated by reference hereinunless expressly included herein.

For purposes of interpreting the claims of subject matter hereof, it isexpressly intended that the provisions of Section 112, sixth paragraphof 35 U.S.C. are not to be invoked unless the specific terms “means for”or “step for” are recited in a claim.

1-9. (canceled)
 10. An infusion pump comprising: a pumping mechanismincluding at least one sensor and a pump motor; and a pump controlsubsystem configured to control operation of the pumping mechanism, thepump control subsystem including: a processor, a memory, and a startupmodule configured to: drive the pump motor at a first rate, receiveinput from the at least one sensor, and drive the pump motor at a secondrate based on the input received from the at least one sensor.
 11. Theinfusion pump of claim 10, wherein the pumping mechanism comprises apiston-pumping system including a syringe driver.
 12. The infusion pumpof claim 10, wherein the startup module is further configured to receivea second input from the at least one sensor and drive the pump motor ata third rate based on the second input received from the at least onesensor.
 13. The infusion pump of claim 10, wherein the at least onesensor is a force sensor.
 14. The infusion pump of claim 10, wherein thestartup module is further configured to derive at least one parameterbased on the input received from the at least one sensor, wherein thepump motor is driven at the second rate based at least on the at leastone derived parameter.
 15. The infusion pump of claim 14, wherein the atleast one sensor is a current sensor.
 16. The infusion pump of claim 10,wherein the startup module is further configured to determine a boundarycondition based on the input received from the at least one sensor. 17.The infusion pump of claim 16, wherein the boundary condition determinesan inflection point of data derived from the input received from the atleast one sensor.
 18. A closed-loop control circuit for driving aninfusion pump motor, the closed-loop control circuit comprising: aproportional gain module; an integral gain module; a derivative gainmodule; a monitor for controlling a switchable input based on output ofthe proportional gain module, the integral gain module, and thederivative gain module; and a summer configured to receive theswitchable input and an infusion pump motor speed and output a pumpmotor drive command.
 19. The closed-loop control circuit for driving aninfusion pump motor of claim 18, further comprising a feedforward pathconfigured to route the switchable input to the pump motor drive commandoutput.
 20. The closed-loop control circuit for driving an infusion pumpmotor of claim 18, further comprising a lookup table receiving as inputthe infusion pump motor speed and a syringe type and configured tooutput a force command, wherein the force command is input to acombiner.
 21. The closed-loop control circuit for driving an infusionpump motor of claim 20, wherein the combiner is configured to receivethe force command as input and output a force error, and wherein theproportional gain and integral gain modules are configured to receive asinput the force error.